#正数在前负数在后
#整数从小到大
#负数从大到小
# list1 = [7,-8,5,4,0,-2,-5]
# print(sorted(list1,key=lambda x:x*-10))
# print(sorted(list1,key=lambda x:x*10))

#这是一个字符串排序，排序规则：小写<大写<奇数<偶数
#s = 'asdf234GDSdsf23' #排序：小写-大写-奇数-偶数
#原理：先比较元组的第一个值，FALSE
s = 'asdf234GDSdsf23'
def num_sort(num):
    if num.isdigit():
        # 判断是奇数
        if int(num) % 2 == 1:
            # 获取ASCII值
            return (ord(num)+100)*-1
        else:
            return (ord(num)+200)*-1
    return ord(num)
print(''.join(sorted(s,key=num_sort,reverse=True)))
